/* jQuery窗口加载事件 */
$(function () {
  /* 全选功能 */
  $(".qx").click(function () {
    let status = $(this).prop("checked");
    $(".dx").prop("checked", status);
    count();
  });

  /* 反选功能 */
  $(".dx").click(function () {
    $(".dx").length === $(".dx:checked").length
      ? $(".qx").prop("checked", true)
      : $(".qx").prop("checked", false);
    count();
  });

  /* 商品数量增加功能 */
  $(".add").click(function () {
    let val = $(this).prev().val();
    val++;
    $(this).prev().val(val);
    count();
  });

  /* 商品数量减少功能 */
  $(".reduce").click(function () {
    let val = $(this).next().val();
    if (val > 1) {
      val--;
      $(this).next().val(val);
      count();
    } else {
      return;
    }
  });

  /* 计算商品总数和总价功能 */
  function count() {
    // 总量
    let totleNum = 0;
    // 当前选中行数量
    let txtVal = 0;
    // 当前选中行单价
    let singlePrice = 0;
    // 当前选中行总价
    let momentPrice = 0;
    // 总价
    let totlePrice = 0;
    $(".dx:checked").each(function () {
      // 当前选中行数量
      txtVal = $(this).closest("li").find(".txt").val();
      // 总量
      totleNum += parseInt(txtVal);
      // 当前选中行单价
      singlePrice = $(this).closest("li").find(".singlePrice").text();
      // 当前选中行总价
      momentPrice = txtVal * singlePrice;
      // 总价
      totlePrice += parseFloat(momentPrice);
    });
    // 总价保留两位小数
    totlePrice = totlePrice.toFixed(2);
    // 数据渲染
    $(".totleNum").text(totleNum);
    $(".totlePrice").text(totlePrice);
  }
});
